<?php

/**
 * Редактирование шаблона почтового сообщения.
 *
 */
class Mail_Backend_Templates_Edit extends Kernel_Action_Form_Simple 
{

    /**
     * Путь к файлу шаблона.
     *
     * @var string
     */
    protected $_template = 'backend/component/form.tpl';

    /**
     * Флаг, указывающий, что в форме может только редактироваться существующая
     * запись, но не создаваться новая
     *
     * @var boolean
     */
    protected $_update_only = true;

    /**
     * Основная таблица, в которой хранится редактируемый элемент.
     *
     * @var string
     */
    protected $_table = 'system_template';

    /**
     * Элементы основной таблицы, которые нужно исключить из формы.
     *
     * @var array
     */
    protected $_exclude = array('name', 'timestamp');

    /**
     * Конструктор.
     *
     * @param   array   $params
     */
    public function __construct($params = array()) 
    {
        $params['id'] = Application::getRequest()->get('template');
        parent::__construct($params);
    }

    /**
     * Инициализирует элементы формы.
     *
     */
    protected function _initElements() 
    {
        parent::_initElements();
        $this->_setAsRequired('subject');
        $this->_setElementParam('html', array(
            'template' => 'wysiwyg',
        ));
    }

    /**
     * Выполняет проверку данных формы.
     *
     */
    protected function _validate()
     {
        parent::_validate();
        if ($this->_isBlank('text') && $this->_isBlank('html')) {
            $this->_error(__('SPECIFY_TEXT_OR_HTML'));
        }
    }
    
}
